package com.example.lib.io2;

import java.io.File;
import java.io.FilenameFilter;

public class c_io_file_20_05_06 {
    public static void main(String[] args) {
//        listRootsDemo();
//        listDemo();
//        listDemo2();
//        listDemo3();
        listDemo4();
    }

    public static void listDemo4() {
        File dir = new File("c:\\");
        File[] files = dir.listFiles();
        for (File file : files) {
            System.out.println(file.getName() + "::" + file.length());
        }
    }

    public static void listDemo3() {
        File f = new File("E:\\testFile");
        String[] arr = f.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
              /* if (name.endsWith(".png")){
                   return true;
               }else {
                   return false;
               }*/
                return name.endsWith(".png");
            }
        });
        for (String name : arr) {
            System.out.println(name);
        }
    }

    public static void listDemo2() {
        File f = new File("E:\\testFile");
        File[] files = f.listFiles();
        for (File file : files) {
            if (file.isFile() && file.getName().endsWith(".png")) {
                System.out.println(file.getName());
            }
        }
    }

    public static void listDemo() {
        File f = new File("c:\\");
        String[] names = f.list();//调用list方法的file对象必须是封装了一个目录。该目录还必须存在。 
        for (String name : names) {
            System.out.println(name);
        }
    }

    public static void listRootsDemo() {
        File[] files = File.listRoots();
        for (File f : files) {
            System.out.println(f);
        }
    }
}
